home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.cs.arizona.edu
/
ftp.cs.arizona.edu.tar
/
ftp.cs.arizona.edu
/
icon
/
newsgrp
/
group95b.txt
/
000031_icon-group-sender _Tue May 30 14:57:03 1995.msg
< prev
next >
Wrap
Internet Message Format
|
1995-09-18
|
3KB
Received: by cheltenham.cs.arizona.edu; Tue, 30 May 1995 12:13:01 MST
To: icon-group-l@cs.arizona.edu
Date: 30 May 1995 14:57:03 GMT
From: espie@lotus.ens.fr (Marc Espie)
Message-Id: <3qfbnv$fjr@nef.ens.fr>
Organization: Ecole Normale Superieure, PARIS, France
Sender: icon-group-request@cs.arizona.edu
References: <3pv9m2$n57@nova.umuc.edu>, <3qesfp$bhj@goanna.cs.rmit.edu.au>, <D9E9B9.LyD@midway.uchicago.edu>
Subject: Re: icon notes [Re: Is there such a language...]
Errors-To: icon-group-errors@cs.arizona.edu
In article <D9E9B9.LyD@midway.uchicago.edu>,
Richard L. Goerwitz <goer@midway.uchicago.edu> wrote:
>Richard A. O'Keefe <ok@goanna.cs.rmit.edu.au> wrote:
>
>>>Does the Icon compiler produce native (machine) code?
>>
>>Yes. It is called 'iconc'.
>
>But the executables tend to be rather large, and in most
>cases you're better off using the interpreter. To the user
>there is no difference except execution speed. And the in-
>terpreter is much easier to deal with (older, more reliable,
>faster to create executables, etc.).
>
Except for icon Makefiles looking like tangled spaghettis, it's
rather easy to get icon to use shared dynamic libraries on modern
architectures like Sparc, in which case the whole runtime gets shared
and the code size gets down somewhat.
The other problem is more drastic: the icon compiler is not supported,
since the Icon Project doesn't have enough support for doing it, it
doesn't support separate compilation, and really interesting optimizations
are not implementing (like downgrading icon integers to real C integers).
Oh yes... and there might be some bugs in the type inferencing compiler as
well...
All this notwithstanding, there are still some cases when compiling is
useful... For some rather intensive combinatorial programs, I've got a
3x speed-up, going down from 24 hours to 8 hours, and it's always fun to
use the compiler (Wow! 80 000 lines of C code, iconc making 10 passes of
type inferencing, gobbling up 30 Megs of memory :-) ).
Actually the answer is incorrect: iconc produces intermediate C code,
that is compiled by the machine native compiler (or gcc in most cases).
Using -p "-O2" with iconc helps getting fast executables. This might
explain why you got nearly no improvement when using iconc.
--
[nosave]<http://acacia.ens.fr:8080/home/espie/index.html>
`Ayuka no koto... suki dayo.' (KOR, Ano Hi ni kaeritai)
`$@0>@n(J $@$N$3$H!<9%$-$@$h!#(J' ($@$"$NF|$K5"$j$?$$(J)(B
Marc Espie (Marc.Espie@ens.fr)